package com.dingreading.cloud.web.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 实体类。
 *
 * @author Administrator
 * @since 2024-03-12
 */
@Data
@Table(value = "reading_student")
public class ReadingStudent implements Serializable {

    private static final long serialVersionUID = 1L;

    @Id(keyType = KeyType.Auto)
    private Long id;

    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @Column(onInsertValue = "now()")
    private Date addTime;

    /**
     * 修改时间
     */
    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @Column(onInsertValue = "now()", onUpdateValue = "now()")
    private Date editTime;

    /**
     * 公司uid
     */
    @ApiModelProperty(value = "公司uid")
    private String corpUid;

    /**
     * 门店uid
     */
    @ApiModelProperty(value = "门店uid")
    private String storeUid;

    /**
     * 门店名称
     */
    @ApiModelProperty(value = "门店名称")
    private String storeName;

    /**
     * uuid
     */
    @ApiModelProperty(value = "uuid")
    private String uid;

    /**
     * 学校名称
     */
    @ApiModelProperty(value = "学校名称")
    private String schoolName;

    /**
     * 渠道标识
     */
    @ApiModelProperty(value = "渠道标识")
    private String channelUid;

    /**
     * 渠道名称
     */
    @ApiModelProperty(value = "渠道名称")
    private String channelName;

    /**
     * 头像
     */
    @ApiModelProperty(value = "头像")
    private String img;

    /**
     * 真实全名
     */
    @ApiModelProperty(value = "真实全名")
    private String fullName;

    /**
     * 家长联系电话
     */
    @ApiModelProperty(value = "家长联系电话")
    private String mob;

    /**
     * 年级，每年自动增长，可以手动调整
     * 幼儿园：小:-3，中:-2，大-1；小学：一:1，二:2，三:3，四:4，五:5，六:6；初中：初一:7，初二:8；未知:0
     */
    @ApiModelProperty(value = "年级，每年自动增长，可以手动调整")
    private Integer grade;

    /**
     * 书籍id
     */
    @ApiModelProperty(value = "书籍id")
    private Long bookId;

    /**
     * 书籍名称
     */
    @ApiModelProperty(value = "书籍名称")
    private String bookName;

    /**
     * 小程序unionid
     */
    @ApiModelProperty(value = "小程序unionid")
    private String unionid;

    /**
     * 小程序openid
     */
    @ApiModelProperty(value = "小程序openid")
    private String openid;

    /**
     * 分享小程序的openid
     */
    @ApiModelProperty(value = "分享小程序的openid")
    private String shareOpenid;

    /**
     * 创建人uid
     */
    @ApiModelProperty(value = "创建人uid")
    private String addStaffUid;

    /**
     * 创建人姓名
     */
    @ApiModelProperty(value = "创建人姓名")
    private String addStaffName;

    /**
     * 更新人uid
     */
    @ApiModelProperty(value = "更新人uid")
    private String lastStaffUid;

    /**
     * 更新人姓名
     */
    @ApiModelProperty(value = "更新人姓名")
    private String lastStaffName;

    /**
     * 打卡记录
     */
    @Column(ignore = true)
    List<ReadingStudentPunch> list;
}
